42 research outputs found

    An Infrastructure Modeling Approach for Multi-Cloud Provisioning

    Get PDF
    Cloud Computing has become the primary model of pay-per-use used by practitioners and researchers to obtain an infrastructure in a short time. DevOps uses the Infrastructure as Code approach to infrastructure automation based on software development practices. Moreover, the DevOps community provides different tools to orchestrate the infrastructure provisioning in a particular cloud provider. However, the traditional method of using a single cloud provider has several limitations regarding privacy, security, performance, geography reach, and vendor lock-in. To mitigate these issues industry and academia are implementing multiple clouds (i.e., multi-cloud). In previous work, we have introduced ARGON, which is an infrastructure modeling tool for cloud provisioning that leverages the model-driven engineering (MDE) to provide a uniform, cohesive, and seamless process to support the DevOps concept. In this paper, we present an extension of ARGON to support the multi-cloud infrastructure provisioning and propose a flexible migration process among cloud

    End-to-End Automation in Cloud Infrastructure Provisioning

    Get PDF
    Infrastructure provisioning in the cloud can be time-consuming and error-prone due to the manual process of building scripts. Configuration Management Tools (CMT) such as Ansible, Puppet or Chef use scripts to orchestrate the infrastructure provisioning and its configuration in the cloud. Although CMTs have a high level of automation in the infrastructure provisioning still remains a challenge to automate the iterative development process in the cloud. Infrastructure as Code is a process where the infrastructure is automatically built, managed, and provisioned by scripts. However, there are several infrastructure provisioning tools and scripting languages that need to be used coherently. In previous work, we have introduced the ARGON modelling tool with the purpose of abstracting the complexity of working with different DevOps tools through a DSL. In this work, we present an end-to- end automation for a toolchain for infrastructure provisioning in the cloud based on DevOps community tools and ARGON

    An Incremental and Model Driven Approach for the Dynamic Reconfiguration of Cloud Application Architectures

    Get PDF
    In incremental development approaches, the integration of new services into the actual cloud application may trigger the dynamic reconfiguration of the cloud application architecture, thus changing its structure and behavior at runtime. This paper presents a model driven approach that uses the specification of how the integration of new services will change the current cloud application architecture to obtain: i) the orchestration of services, ii) skeletons of interface implementations, and iii) the operationalization of reconfiguration actions to be applied at runtime. This approach follows the DIARy-process, which defines the activities needed to reconfigure dynamically the architecture of cloud services. The feasibility of the approach is illustrated by means of a case study that uses Microsoft Azure© as a service deployment platform. WCF Workflow services are generated and deployed for orchestration, whereas XML transformation files are generated to update services’ binding configurations at runtim

    On the Effectiveness of Tools to Support Infrastructure as Code: Model-Driven Versus Code-Centric

    Full text link
    [EN] Infrastructure as Code (IaC) is an approach for infrastructure automation that is based on software development practices. The IaC approach supports code-centric tools that use scripts to specify the creation, updating and execution of cloud infrastructure resources. Since each cloud provider offers a different type of infrastructure, the definition of an infrastructure resource (e.g., a virtual machine) implies writing several lines of code that greatly depend on the target cloud provider. Model-driven tools, meanwhile, abstract the complexity of using IaC scripts through the high-level modeling of the cloud infrastructure. In a previous work, we presented an infrastructure modeling approach and tool (Argon) for cloud provisioning that leverages model-driven engineering and supports the IaC approach. The objective of the present work is to compare a model-driven tool (Argon) with a well-known code-centric tool (Ansible) in order to provide empirical evidence of their effectiveness when defining the cloud infrastructure, and the participants & x2019; perceptions when using these tools. We, therefore, conducted a family of three experiments involving 67 Computer Science students in order to compare Argon with Ansible as regards their effectiveness, efficiency, perceived ease of use, perceived usefulness, and intention to use. We used the AB/BA crossover design to configure the individual experiments and the linear mixed model to statistically analyze the data collected and subsequently obtain empirical findings. The results of the individual experiments and meta-analysis indicate that Argon is more effective as regards supporting the IaC approach in terms of defining the cloud infrastructure. The participants also perceived that Argon is easier to use and more useful for specifying the infrastructure resources. Our findings suggest that Argon accelerates the provisioning process by modeling the cloud infrastructure and automating the generation of scripts for different DevOps tools when compared to Ansible, which is a code-centric tool that is greatly used in practice.This work was supported by the Ministry of Science, Innovation, and Universities (Adapt@Cloud project), Spain, under Grant TIN2017-84550-R. The work of Julio Sandobalin was supported by the Escuela Politecnica Nacional, Ecuador.Sandobalín, J.; Insfran, E.; Abrahao Gonzales, SM. (2020). On the Effectiveness of Tools to Support Infrastructure as Code: Model-Driven Versus Code-Centric. IEEE Access. 8:17734-17761. https://doi.org/10.1109/ACCESS.2020.2966597S1773417761

    A Monitoring Infrastructure for the Quality Assessment of Cloud Services

    Get PDF
    Service Level Agreements (SLAs) specify the strict terms under which cloud services must be provided. The assessment of the quality of services being provided is critical for both clients and service providers. In this context, stakeholders must be capable of monitoring services delivered as Software as a Service (SaaS) at runtime and of reporting any eventual non-compliance with SLAs in a comprehensive and flexible manner. In this paper, we present the definition of an SLA compliance monitoring infrastructure, which is based on the use of [email protected], its main components and artifacts, and the interactions among them. We place emphasis on the configuration of the artifacts that will enable the monitoring, and we present a prototype that can be used to perform this monitoring. The feasibility of our proposal is illustrated by means of a case study, which shows the use of the components and artifacts in the infrastructure and the configuration of a specific plan with which to monitor the services deployed on the Microsoft Azure© platform

    Evaluating the Efficacy of Value-driven Methods: A Controlled Experiment

    Get PDF
    A value model is an abstract representation of an organization and is used for capturing and describing the rationale of how the organization creates, delivers, and captures business value. Value-driven development methods use the notion of “economic value exchange” to define more efficient business strategies and align Information Systems with the organization goals. However, current value-driven methods are complex and there is not enough empirical evidence about which of the existing methods is more effective under what circumstances. This paper addresses this issue by presenting a controlled experiment aimed at comparing the Dynamic Value Description (DVD) method, which is a recently defined cognitive early requirements approach, with the well-known e3value method, with respect to their effectiveness, efficiency, perceived ease of use, perceived usefulness and intention to use. The results show that DVD has proved to be a promising method for specifying business value

    Incremental Integration of Microservices in Cloud Applications

    Get PDF
    Microservices have recently appeared as a new architectural style that is native to the cloud. The high availability and agility of the cloud demands organizations to migrate or design microservices, promoting the building of applications as a suite of small and cohesive services (microservices) that are independently developed, deployed and scaled. Current cloud development approaches do not support the incremental integration needed for microservice platforms, and the agility of getting new functionalities out to customers is consequently affected by the lack of support for the integration design and automation of the development and deployment tasks. This paper presents an approach for the incremental integration of microservices that will allow developers to specify and design microservice integration, and provide mechanisms with which to automatically obtain the implementation code for business logic and interoperation among microservices along with deployment and architectural reconfiguration scripts specific to the cloud environment in which the microservice will be deployed

    A Smart Provisioning Approach to Cloud Infrastructure

    Full text link
    [EN] Cloud Computing has become the primary model to pay-per-use used by practitioners and researchers for getting an infrastructure in a short time. DevOps is a paradigm that provides practices and tools to optimize the software delivery time. On the one hand, Infrastructure as Code is the cornerstone of DevOps to infrastructure automation based on practices of software development. On the other hand, there exist tools that provide support for infrastructure provisioning and configuration management in the Cloud. Currently, companies are using Cloud-based DevOps processes to leverage the capacities of Cloud Computing and improve the software delivery time. However, infrastructure provisioning is a time-consuming and error-prone activity because it is supported by tools which work in isolation and they do not have any link between them. For this reason, we propose a smart provisioning approach of infrastructure based on models, which have configuration needed to create infrastructure, run a set of automated tests and setup automatically the DevOps tools used in this process.This research is supported by the Value@Cloud project (TIN2013- 46300-R)Sandobalin Guaman, JC.; Insfran, E.; Abrahao Gonzales, SM. (2018). A Smart Provisioning Approach to Cloud Infrastructure. Journal of Computers. 29(6):229-233. https://doi.org/10.3966/199115992018122906022S22923329

    Incorporating Model-Driven Techniques into Requirements Engineering for the Service-Oriented Development Process

    Get PDF
    Abstract. Modern information systems, which are the result of the interconnection of systems of many organizations, run in variable contexts, and require both a lightweight approach to interoperability and the capability to actively react to changing requirements and failures. Model-Driven Development (MDD) and Service-Oriented Architecture (SOA) are software development approaches that deal with this complexity, reducing time and cost development and augmenting flexibility and interoperability. Although, requirements engineering is accepted as a critical activity in these approaches, there is a need to appropriately integrate and automate the requirements modeling and transformation tasks as part of MDD and SOA development approaches. Our proposal is a Rational Unified Process (RUP) extension, in which the requirements discipline is placed in a model-driven context in order to derive SOAs. This paper includes the definition of a model-driven requirements process including activities, roles, and work products
    corecore